Semiconductor memory is widely used in various electronic devices such as cellular telephones, digital cameras, personal digital assistants, medical electronics, mobile computing devices, non-mobile computing devices and data servers. Semiconductor memory may comprise non-volatile memory, volatile memory or both. Non-volatile memory allows information to be stored and retained even when the non-volatile memory is not connected to a source of power (e.g., a battery). Examples of non-volatile memory include flash memory (e.g., NAND-type and NOR-type flash memory), Electrically Erasable Programmable Read-Only Memory (EEPROM), and others.
When a memory system is deployed in or connected to an electronic device (e.g., host), the memory system can be used to store (i.e., write) data and read data. The physical memory cells of a memory system have a limited lifetime, in terms of the number of program/erase cycles that they can undergo before they start to fail. Consequently, it can be important for a memory system to manage its write operations in order to optimize the memory system's lifetime.